﻿<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
	<head>
		<meta http-equiv="content-type" content="text/html; charset=utf-8" />
		<meta name="keywords" content="UI/API/1.7/Draggable" />
		<title>UI/API/1.7/Draggable - jQuery JavaScript Library</title>
		<link rel="stylesheet" href="style/reset.css" type="text/css" />
		<link rel="stylesheet" href="style/screen.css" type="text/css" />
		<style type="text/css" media="screen,projection"></style>

		<link rel="stylesheet" type="text/css" href="style/jquery.tabs.css" />
		<!--[if lte IE 7]>
		<link rel="stylesheet" href="style/jquery.tabs-ie.css" type="text/css" media="projection, screen"/>
		<![endif]-->

		<script type="text/javascript" src="js/jquery.min.js"></script>
		<script src="js/jquery.tabs.js"></script>

		<script>$(function(){
			$("div[id=examples]").each(function(){
				$(this).siblings("div:first").find("div.desc").after(
					$(this).find("div.example:has(#demo):first").remove().clone());

				if ( !$("div.example", this).length )
					$(this).remove();
			});

			$("div.entry")
				.children("p").remove().end()
				.find("ul:first li").each(function(){
					if ( !$(this).parent().siblings( $("a",this).attr("href") ).length )
						$(this).remove();
				}).end()
				.not(".ui")
				.tabs();

			$("div.args > br").remove();

			$("div.example")
				.children("p").remove().end()
				.tabs();

			var keywords = "String,Number,Object,Options,Array,Function,Callback,Selector,Event,Element,Integer,Float,Boolean".split(",");

			$("td.default span, td.type").each(function(){
				var html = this.innerHTML;
				jQuery.each(keywords, function(i,key){
					html = html.replace(new RegExp(key, "ig"), "<a href='/Types#" + key + "'>" + key + "</a>");
				});
				this.innerHTML = html;
			});

			$("div[id=source]").each(function(){
				var source = $("pre", this).html()
					.replace(/<\/?a.*?>/ig, "")
					.replace(/<\/?strong.*?>/ig, "")
					.replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&");

				//var items = [];
				//source = source.replace(/\s*<(link|script).*?>\s\*/g, function(m){
					//items.push(m);
					//return "";
				//}).replace("</head>", items.join("") + "</head>")
				//*/

				var iframe = document.createElement("iframe");
				iframe.src = "";
				iframe.width = "100%";
				iframe.height = $(this).prev().attr("rel") || "125";
				iframe.style.border = "none";
				$(this).prev().append(iframe);


				$(window).load(function(){
					var doc = iframe.contentDocument || iframe.contentWindow.document;
					source = source
						// IE needs to wait for the script to load (?)
						.replace("$(document).ready(function(){", "window.onload = (function(){try{")
						.replace(/}\);\s*<\/sc/, "}catch(e){}});</sc")
						//.replace("http://code.jquery.com/jquery-latest.js", "http://code.jquery.com/jquery-1.3rc2.js")
						.replace("</head>", "<style>html,body{border:0; margin:0; padding:0;}</style></head>");
					doc.open();
					doc.write( source );
					doc.close();
				});

			});
		});</script>
		<script type="text/javascript" src="js/custom.js"></script>
		<!--[if lt IE 5.5000]><style type="text/css">@import "http://www.winswd.com/aboutme/jquery/ui/style/IE50Fixes.css";</style><![endif]-->
		<!--[if IE 5.5000]><style type="text/css">@import "http://www.winswd.com/aboutme/jquery/ui/style/IE55Fixes.css";</style><![endif]-->
		<!--[if IE 6]><style type="text/css">@import "http://www.winswd.com/aboutme/jquery/ui/style/IE60Fixes.css";</style><![endif]-->
		<!--[if IE 7]><style type="text/css">@import "http://www.winswd.com/aboutme/jquery/ui/style/IE70Fixes.css?1";</style><![endif]-->
		<!--[if lt IE 7]><script type="text/javascript" src="http://www.winswd.com/aboutme/jquery/ui/style/IEFixes.js"></script>
		<meta http-equiv="imagetoolbar" content="no" /><![endif]-->
		
		<!-- Head Scripts -->
			</head>
	<body id="jq-interior"  class="mediawiki ns-0 ltr">


<!-- Copyright � 2005. Spidersoft Ltd -->
<style>
A.applink:hover {border: 2px dotted #DCE6F4;padding:2px;background-color:#ffff00;color:green;text-decoration:none}
A.applink       {border: 2px dotted #DCE6F4;padding:2px;color:#2F5BFF;background:transparent;text-decoration:none}
A.info          {color:#2F5BFF;background:transparent;text-decoration:none}
A.info:hover    {color:green;background:transparent;text-decoration:underline}
</style>

<!-- /Copyright � 2005. Spidersoft Ltd -->



	<div id="jq-siteContain">
			<div id="jq-content" class="jq-clearfix">

				<div id="jq-interiorNavigation">
					<div class='jq-portlet' id='jq-p-Getting-Started'>
						<h5></h5>
						<div class='jq-pBody'>
							<ul>
								<li id="jq-ui-doc-n-Draggable"><a href="Draggable.html">Draggable</a></li>
								<li id="jq-ui-doc-n-Droppable"><a href="Droppable.html">Droppable</a></li>				
								<li id="jq-ui-doc-n-Resizable"><a href="Resizable.html">Resizable</a></li>
								<li id="jq-ui-doc-n-Selectable"><a href="Selectable.html">Selectable</a></li>
								<li id="jq-ui-doc-n-Sortable"><a href="Sortable.html">Sortable</a></li>
							</ul>				
						</div>
					</div>
						<div class='jq-portlet' id='jq-p-API-Reference'>
						<h5>部件</h5>
						<div class='jq-pBody'>
							<ul>
								<li id="jq-ui-doc-n-Accordion"><a href="Accordion.html">Accordion</a></li>
								<li id="jq-ui-doc-n-Datepicker"><a href="Datepicker.html">Datepicker</a></li>				
								<li id="jq-ui-doc-n-Dialog"><a href="Dialog.html">Dialog</a></li>
								<li id="jq-ui-doc-n-Progressbar"><a href="Progressbar.html">Progressbar</a></li>
								<li id="jq-ui-doc-n-Slider"><a href="Slider.html">Slider</a></li>
								<li id="jq-ui-doc-n-Tabs"><a href="Tabs.html">Tabs</a></li>
							</ul>
						</div>
					</div>
						<div class='jq-portlet' id='jq-p-Plugins'>
				
						<h5>动画</h5>
						<div class='jq-pBody'>
							<ul>
								<li id="jq-ui-doc-n-AddClass"><a href="AddClass.html">AddClass</a></li>
								<li id="jq-ui-doc-n-RemoveClass"><a href="RemoveClass.html">RemoveClass</a></li>
                                <li id="jq-ui-doc-n-Animate"><a href="Animate.html">Animate</a></li>
                                <li id="jq-ui-doc-n-Effect"><a href="Effect.html">Effect</a></li>
                                <li id="jq-ui-doc-n-Hide"><a href="Hide.html">Hide</a></li>
                                <li id="jq-ui-doc-n-Show"><a href="Show.html">Show</a></li>
                                <li id="jq-ui-doc-n-SwitchClass"><a href="SwitchClass.html">SwitchClass</a></li>
                                <li id="jq-ui-doc-n-Toggle"><a href="Toggle.html">Toggle</a></li>
                                <li id="jq-ui-doc-n-ToggleClass"><a href="ToggleClass.html">ToggleClass</a></li>
							</ul>
						</div>				
					</div>					
				</div><!-- /#interiorNavigation -->

				<div id="jq-primaryContent">
		<div id="column-content">
	<div id="docs-content">
		<a name="top" id="top"></a>
				<h1 class="firstHeading">UI/API/1.7/Draggable</h1>
		<div id="bodyContent">
<!-- start content -->



<ul class="UIAPIPlugin-toc">
<li><a href="#overview">概述</a></li>
<li><a href="#options">参数</a></li>
<li><a href="#events">事件</a></li>
<li><a href="#methods">方法</a></li>
<li><a href="#theming">主题</a></li>
</ul>
<div class="UIAPIPlugin">
  <h1>jQuery UI Draggable</h1>
  <div id="overview">
    <h2 class="top-header">概述</h2>
    <div id="overview-main">
        <p>jQuery UI Draggable 插件可以使被选择的元素随着鼠标移动实现拖动.</p>
<p>可拖动的元素得到一个<code>ui-draggable</code>类. 拖动中的元素始终得到<code>ui-draggable-dragging</code>类. 假如你不仅仅只想要拖动,而是想要拖动并且填充,那么请看看jQuery UI Droppable 插件,它提供一个可以被填充的目标.</p>
<p>所有的回调函数(start, stop, drag)接受两个参数: 浏览器事件和ui对象, 此对象请查看下面的文档 :</p>
<ul>
<li><b>ui.helper</b> - 被拖动的jQuery辅助对象</li>
<li><b>ui.position</b> - 辅助对象相对于上级元素的当前位置, 使用{ top, left } </li>
<li><b>ui.offset</b> - 辅助对象相对于页面的当前绝对位置, 使用{ top, left }</li>
</ul>
    </div>
    <div id="overview-dependencies">
        <h3>其他附加文件</h3>
        <ul>
<li>UI Core</li>
</ul>
    </div>
    <div id="overview-example">
        <h3>示例</h3>
        <div id="overview-example" class="example">
<ul><li><a href="#demo"><span>代码示范</span></a></li><li><a href="#source"><span>查看源文件</span></a></li></ul>
<p><div id="demo" class="tabs-container" rel="170">
使用默认参数初始化一个draggable.<br />
</p>
<pre>$(&quot;#draggable&quot;).draggable();
</pre>
<p></div><div id="source" class="tabs-container">
</p>
<pre>&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
  &lt;link type=&quot;text/css&quot; href=&quot;themes/base/ui.all.css&quot; rel=&quot;stylesheet&quot; /&gt;
  &lt;script type=&quot;text/javascript&quot; src=&quot;js/jquery.min.js&quot;&gt;&lt;/script&gt;
  &lt;script type=&quot;text/javascript&quot; src=&quot;ui/ui.core.js&quot;&gt;&lt;/script&gt;
  &lt;script type=&quot;text/javascript&quot; src=&quot;ui/ui.draggable.js&quot;&gt;&lt;/script&gt;
  &lt;style type=&quot;text/css&quot;&gt;
    #draggable { width: 100px; height: 70px; background: silver; }
  &lt;/style&gt;
  &lt;script type="text/javascript"&gt;
  $(document).ready(function(){
    $(&quot;#draggable&quot;).draggable();
  });
  &lt;/script&gt;
&lt;/head&gt;
&lt;body style="font-size:62.5%;"&gt;
  
&lt;div id=&quot;draggable&quot;&gt;Drag me&lt;/div&gt;

&lt;/body&gt;
&lt;/html&gt;
</pre>
<p></div>
</p><p></div>
    </div>
  </div>
  <div id="options">
    <h2 class="top-header">参数</h2>
    <ul class="options-list">
      
<li class="option" id="option-addClasses">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-addClasses">addClasses</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Boolean</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">true</dd>      
    </dl>
  </div>
  <div class="option-description">
    <p>假如设定为false,可以防止<code>ui-draggable</code>类在进行时添加.这可能会使在初始化数百个元素执行<code>.draggable()</code>时使性能得到理想的优化</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">    
<dt>
  使用指定的<code>addClasses</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ addClasses: false });</code></pre>
</dd>    
<dt>
  在初始化后设置或者获取<code>addClasses</code>参数.
</dt>
<dd>
<pre><code>//获取
var addClasses = $('.selector').draggable('option', 'addClasses');
//设置
$('.selector').draggable('option', 'addClasses', false);</code></pre>
</dd>
    </dl>
  </div>
</li>

<li class="option" id="option-appendTo">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-appendTo">appendTo</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Element, Selector</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">'parent'</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>使用<code>appendTo</code>参数使 draggable 辅助容器在拖动时被转到或选择指定的元素. 默认情况下,辅助容器被添加到和draggable相同的容器中.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>appendTo</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ appendTo: 'body' });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>appendTo</code>参数.
</dt>
<dd>
<pre><code>//获取
var appendTo = $('.selector').draggable('option', 'appendTo');
//设置
$('.selector').draggable('option', 'appendTo', 'body');</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-axis">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-axis">axis</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">String</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>设置拖动是水平方向还是垂直方向,也可以是水平与垂直方向. 允许使用的值: 'x', 'y'.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>axis</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ axis: 'x' });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>axis</code>参数.
</dt>
<dd>
<pre><code>//获取
var axis = $('.selector').draggable('option', 'axis');
//设置
$('.selector').draggable('option', 'axis', 'x');</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-cancel">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-cancel">cancel</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Selector</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">':input,option'</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>禁止在指定的元素上进行拖动</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>cancel</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ cancel: 'button' });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>cancel</code>参数.
</dt>
<dd>
<pre><code>//获取
var cancel = $('.selector').draggable('option', 'cancel');
//设置
$('.selector').draggable('option', 'cancel', 'button');</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-connectToSortable">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-connectToSortable">connectToSortable</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Selector</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>允许draggable填充到一个指定的sortables. 如果使用了这个参数 (为了更好的实现效果,<code>helper</code>必须设置为'clone'),一个draggable可以被填充到一个sortable列表中,并成为它的一部分.
</p><p>注: 这个参数如果指定为选择器数组,则会被删除</p>
	
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>connectToSortable</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ connectToSortable: 'ul#myList' });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>connectToSortable</code>参数.
</dt>
<dd>
<pre><code>//获取
var connectToSortable = $('.selector').draggable('option', 'connectToSortable');
//设置
$('.selector').draggable('option', 'connectToSortable', 'ul#myList');</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-containment">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-containment">containment</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Selector, Element, String, Array</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>约束拖动在一个元素或者一个范围之内. 允许使用的字符值: 'parent', 'document', 'window', [x1, y1, x2, y2].</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>containment</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ containment: 'parent' });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>containment</code>参数.
</dt>
<dd>
<pre><code>//获取
var containment = $('.selector').draggable('option', 'containment');
//设置
$('.selector').draggable('option', 'containment', 'parent');</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-cursor">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-cursor">cursor</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">String</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">'auto'</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>设置拖动时的鼠标指针样式.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>cursor</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ cursor: 'crosshair' });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>cursor</code>参数.
</dt>
<dd>
<pre><code>//获取
var cursor = $('.selector').draggable('option', 'cursor');
//设置
$('.selector').draggable('option', 'cursor', 'crosshair');</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-cursorAt">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-cursorAt">cursorAt</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Object</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>设置在进行拖动时鼠标总是出现在辅助元素的固定位置. 坐标可使用散列或者相结合的一个或两个键值: <code>{ top, left, right, bottom }</code>.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>cursorAt</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ cursorAt: { left: 5 } });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>cursorAt</code>参数.
</dt>
<dd>
<pre><code>//获取
var cursorAt = $('.selector').draggable('option', 'cursorAt');
//设置
$('.selector').draggable('option', 'cursorAt', { left: 5 });</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-delay">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-delay">delay</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Integer</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">0</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>在鼠标按下持续了多少毫秒后开始拖动. 这个参数可以防止对一些元素的意外拖动.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>delay</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ delay: 500 });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>delay</code>参数.
</dt>
<dd>
<pre><code>//获取
var delay = $('.selector').draggable('option', 'delay');
//设置
$('.selector').draggable('option', 'delay', 500);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-distance">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-distance">distance</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Integer</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">1</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>Distance参数设置当鼠标按下并拖动了多少个像素之后元素才开始进行拖动.这个参数可以防止对一些元素的意外拖动.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>distance</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ distance: 30 });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>distance</code>参数.
</dt>
<dd>
<pre><code>//获取
var distance = $('.selector').draggable('option', 'distance');
//设置
$('.selector').draggable('option', 'distance', 30);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-grid">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-grid">grid</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Array</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>设置辅助在目标容器中的x和y边距(单位:像素). 数组值: [x, y]</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>grid</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ grid: [50, 20] });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>grid</code>参数.
</dt>
<dd>
<pre><code>//获取
var grid = $('.selector').draggable('option', 'grid');
//设置
$('.selector').draggable('option', 'grid', [50, 20]);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-handle">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-handle">handle</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Element, Selector</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>如果设定了此参数,那么拖动会在指定的元素上开始.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>handle</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ handle: 'h2' });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>handle</code>参数.
</dt>
<dd>
<pre><code>//获取
var handle = $('.selector').draggable('option', 'handle');
//设置
$('.selector').draggable('option', 'handle', 'h2');</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-helper">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-helper">helper</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">String, Function</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">'original'</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>允许使用一个辅助元素来进行拖动时展示. 允许使用的值: 'original', 'clone', Function. 如果指定一个函数,它必须返回一个 DOMElement.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>helper</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ helper: 'clone' });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>helper</code>参数.
</dt>
<dd>
<pre><code>//获取
var helper = $('.selector').draggable('option', 'helper');
//设置
$('.selector').draggable('option', 'helper', 'clone');</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-iframeFix">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-iframeFix">iframeFix</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Boolean, Selector</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>在拖动时防止iframes捕获鼠标拖动事件,配合cursorAt非常有用,或者在任何情况下,如果鼠标光标不超过辅助对象.如果设置为true,会有一个透明的区域覆盖页面上所有的iframes.如果提供一个选择器,则所有匹配的iframes会被一个区域覆盖.</p>
    
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>iframeFix</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ iframeFix: true });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>iframeFix</code>参数.
</dt>
<dd>
<pre><code>//获取
var iframeFix = $('.selector').draggable('option', 'iframeFix');
//设置
$('.selector').draggable('option', 'iframeFix', true);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-opacity">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-opacity">opacity</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Float</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>设置辅助元素在拖动时的不透明度.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>opacity</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ opacity: 0.35 });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>opacity</code>参数.
</dt>
<dd>
<pre><code>//获取
var opacity = $('.selector').draggable('option', 'opacity');
//设置
$('.selector').draggable('option', 'opacity', 0.35);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-refreshPositions">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-refreshPositions">refreshPositions</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Boolean</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>如果设置为true,所有的droppable位置会计算所有的鼠标移动. 注意: 这能解决高度动态网页的问题,但是会大大降低性能.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>refreshPositions</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ refreshPositions: true });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>refreshPositions</code>参数.
</dt>
<dd>
<pre><code>//获取
var refreshPositions = $('.selector').draggable('option', 'refreshPositions');
//设置
$('.selector').draggable('option', 'refreshPositions', true);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-revert">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-revert">revert</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Boolean, String</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>如果设置为true,拖动元素会在拖动结束后返回他开始的位置. 允许的字符值: 'valid', 'invalid'. 如果设置为 invalid, 返回只会发生在draggable没有填充到droppable中时. 为 valid时, 情况相反.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>revert</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ revert: true });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>revert</code>参数.
</dt>
<dd>
<pre><code>//获取
var revert = $('.selector').draggable('option', 'revert');
//设置
$('.selector').draggable('option', 'revert', true);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-revertDuration">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-revertDuration">revertDuration</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Integer</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">500</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>返回动画持续的时间(单位:毫秒). 如果 revert 设置为 false,忽略此参数.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>revertDuration</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ revertDuration: 1000 });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>revertDuration</code>参数.
</dt>
<dd>
<pre><code>//获取
var revertDuration = $('.selector').draggable('option', 'revertDuration');
//设置
$('.selector').draggable('option', 'revertDuration', 1000);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-scope">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-scope">scope</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">String</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">'default'</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>设置draggable和deoppable项所属的组. 除了droppable设置为允许的参数,和droppable相同组的draggable也会被droppable接受.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>scope</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ scope: 'tasks' });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>scope</code>参数.
</dt>
<dd>
<pre><code>//获取
var scope = $('.selector').draggable('option', 'scope');
//设置
$('.selector').draggable('option', 'scope', 'tasks');</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-scroll">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-scroll">scroll</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Boolean</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">true</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>如果设置为true,在拖动容器时将会自动滚动.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>scroll</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ scroll: false });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>scroll</code>参数.
</dt>
<dd>
<pre><code>//获取
var scroll = $('.selector').draggable('option', 'scroll');
//设置
$('.selector').draggable('option', 'scroll', false);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-scrollSensitivity">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-scrollSensitivity">scrollSensitivity</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Integer</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">20</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>容器边缘和浏览器边缘相聚多少个像素时开始滚动. 距离是相对于鼠标的,不是相对于容器的.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>scrollSensitivity</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ scrollSensitivity: 40 });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>scrollSensitivity</code>参数.
</dt>
<dd>
<pre><code>//获取
var scrollSensitivity = $('.selector').draggable('option', 'scrollSensitivity');
//设置
$('.selector').draggable('option', 'scrollSensitivity', 40);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-scrollSpeed">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-scrollSpeed">scrollSpeed</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Integer</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">20</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>根据<code>scrollSensitivity</code>的距离相应的滚动条滚动的速度.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>scrollSpeed</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ scrollSpeed: 40 });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>scrollSpeed</code>参数.
</dt>
<dd>
<pre><code>//获取
var scrollSpeed = $('.selector').draggable('option', 'scrollSpeed');
//设置
$('.selector').draggable('option', 'scrollSpeed', 40);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-snap">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-snap">snap</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Boolean, Selector</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>如果设置一个选择器或者设置为true(相当于 '.ui-draggable'), draggable会在接近所选择的元素的边缘时自动吸附它的边缘.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>snap</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ snap: true });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>snap</code>参数.
</dt>
<dd>
<pre><code>//获取
var snap = $('.selector').draggable('option', 'snap');
//设置
$('.selector').draggable('option', 'snap', true);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-snapMode">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-snapMode">snapMode</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">String</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">'both'</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>确定draggable要吸附目标的那个边缘. snap 设置为 false时忽略此参数. 允许使用的值: 'inner', 'outer', 'both'</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>snapMode</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ snapMode: 'outer' });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>snapMode</code>参数.
</dt>
<dd>
<pre><code>//获取
var snapMode = $('.selector').draggable('option', 'snapMode');
//设置
$('.selector').draggable('option', 'snapMode', 'outer');</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-snapTolerance">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-snapTolerance">snapTolerance</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Integer</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">20</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>设置在距离被吸附的元素边缘多少个像素时发生吸附. snap 设置为false时忽略此参数.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>snapTolerance</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ snapTolerance: 40 });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>snapTolerance</code>参数.
</dt>
<dd>
<pre><code>//获取
var snapTolerance = $('.selector').draggable('option', 'snapTolerance');
//设置
$('.selector').draggable('option', 'snapTolerance', 40);</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-stack">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-stack">stack</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Object</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>在定义的组(散列中的'group'键,接受jQuery selector)中自动控制z-Index,使其总是在被拖动后元素的前方.此参数非常游泳,譬如应用于窗口管理器中.可选择设置'min'键,zIndex的值不能低于该值.</p>
    
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>stack</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ stack: { group: 'products', min: 50 } });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>stack</code>参数.
</dt>
<dd>
<pre><code>//获取
var stack = $('.selector').draggable('option', 'stack');
//设置
$('.selector').draggable('option', 'stack', { group: 'products', min: 50 });</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="option" id="option-zIndex">
  <div class="option-header">
    <h3 class="option-name"><a href="#option-zIndex">zIndex</a></h3>
    <dl>
      <dt class="option-type-label">类型:</dt>
        <dd class="option-type">Integer</dd>
      
      <dt class="option-default-label">默认值:</dt>
        <dd class="option-default">false</dd>
      
    </dl>
  </div>
  <div class="option-description">
    <p>设置辅助在拖动时的z-index.</p>
  </div>
  <div class="option-examples">
    <h4>代码示例</h4>
    <dl class="option-examples-list">
    
<dt>
  使用指定的<code>zIndex</code>参数初始化一个draggable.
</dt>
<dd>
<pre><code>$('.selector').draggable({ zIndex: 2700 });</code></pre>
</dd>

    
<dt>
  在初始化后设置或者获取<code>zIndex</code>参数.
</dt>
<dd>
<pre><code>//获取
var zIndex = $('.selector').draggable('option', 'zIndex');
//设置
$('.selector').draggable('option', 'zIndex', 2700);</code></pre>
</dd>

    </dl>
  </div>
</li>

    </ul>
  </div>
  <div id="events">
    <h2 class="top-header">事件</h2>
    <ul class="events-list">
      
<li class="event" id="event-start">
  <div class="event-header">
    <h3 class="event-name"><a href="#event-start">start</a></h3>
    <dl>
      <dt class="event-type-label">类型:</dt>
        <dd class="event-type">dragstart</dd>
    </dl>
  </div>
  <div class="event-description">
    <p>在拖动开始时触发此事件.</p>
  </div>
  <div class="event-examples">
    <h4>代码示例</h4>
    <dl class="event-examples-list">
    
<dt>
  提供一个回调函数来处理<code>start</code>事件作为初始化选项.
</dt>
<dd>
<pre><code>$('.selector').draggable({
   start: function(event, ui) { ... }
});</code></pre>
</dd>

    
<dt>
  使用<code>dragstart</code>类型来绑定<code>start</code>事件.
</dt>
<dd>
<pre><code>$('.selector').bind('dragstart', function(event, ui) {
  ...
});</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="event" id="event-drag">
  <div class="event-header">
    <h3 class="event-name"><a href="#event-drag">drag</a></h3>
    <dl>
      <dt class="event-type-label">类型:</dt>
        <dd class="event-type">drag</dd>
    </dl>
  </div>
  <div class="event-description">
    <p>在拖动进行时触发此事件.</p>
  </div>
  <div class="event-examples">
    <h4>代码示例</h4>
    <dl class="event-examples-list">
    
<dt>
  提供一个回调函数来处理<code>drag</code>事件作为初始化选项.
</dt>
<dd>
<pre><code>$('.selector').draggable({
   drag: function(event, ui) { ... }
});</code></pre>
</dd>

    
<dt>
  使用<code>drag</code>类型来绑定<code>drag</code>事件.
</dt>
<dd>
<pre><code>$('.selector').bind('drag', function(event, ui) {
  ...
});</code></pre>
</dd>

    </dl>
  </div>
</li>


<li class="event" id="event-stop">
  <div class="event-header">
    <h3 class="event-name"><a href="#event-stop">stop</a></h3>
    <dl>
      <dt class="event-type-label">类型:</dt>
        <dd class="event-type">dragstop</dd>
    </dl>
  </div>
  <div class="event-description">
    <p>当拖动停止时触发此事件.</p>
  </div>
  <div class="event-examples">
    <h4>代码示例</h4>
    <dl class="event-examples-list">
    
<dt>
  提供一个回调函数来处理 <code>stop</code> 事件作为初始化选项.
</dt>
<dd>
<pre><code>$('.selector').draggable({
   stop: function(event, ui) { ... }
});</code></pre>
</dd>

    
<dt>
  使用<code>dragstop</code>类型来绑定<code>stop</code>事件.
</dt>
<dd>
<pre><code>$('.selector').bind('dragstop', function(event, ui) {
  ...
});</code></pre>
</dd>

    </dl>
  </div>
</li>

    </ul>
  </div>
  <div id="methods">
    <h2 class="top-header">方法</h2>
    <ul class="methods-list">
      
<li class="method" id="method-destroy">
  <div class="method-header">
    <h3 class="method-name"><a href="#method-destroy">destroy</a></h3>
    <dl>
      <dt class="method-signature-label">方法签名:</dt>
        <dd class="method-signature">.draggable( 'destroy'







)</dd>
    </dl>
  </div>
  <div class="method-description">
    <p>完全移除拖动功能. 这将使元素返回到之前的初始化状态.</p>
  </div>
</li>


<li class="method" id="method-disable">
  <div class="method-header">
    <h3 class="method-name"><a href="#method-disable">disable</a></h3>
    <dl>
      <dt class="method-signature-label">方法签名:</dt>
        <dd class="method-signature">.draggable( 'disable'







)</dd>
    </dl>
  </div>
  <div class="method-description">
    <p>关闭拖动.</p>
  </div>
</li>


<li class="method" id="method-enable">
  <div class="method-header">
    <h3 class="method-name"><a href="#method-enable">enable</a></h3>
    <dl>
      <dt class="method-signature-label">方法签名:</dt>
        <dd class="method-signature">.draggable( 'enable'







)</dd>
    </dl>
  </div>
  <div class="method-description">
    <p>打开拖动.</p>
  </div>
</li>


<li class="method" id="method-option">
  <div class="method-header">
    <h3 class="method-name"><a href="#method-option">option</a></h3>
    <dl>
      <dt class="method-signature-label">方法签名:</dt>
        <dd class="method-signature">.draggable( 'option'

, optionName

, <span class="optional">[</span>value<span class="optional">] </span>



)</dd>
    </dl>
  </div>
  <div class="method-description">
    <p>获取或者设置拖动参数. 如果没有提供参数值则是获取.</p>
  </div>
</li>


    </ul>
  </div>
  <div id="theming">
    <h2 class="top-header">主题</h2>
    <p>jQuery UI Draggable插件使用jQuery UI CSS 框架的外观和风格，包括颜色和背景纹理.我们建议您使用ThemeRoller工具来创建和下载的自定义主题，很容易建立和维护.
</p>

  <p>如果有更深层次的个性化需要，有特定类别的工具ui.draggable.css样式可供参考，可以修改这些参考。这些课程是下面以高亮和粗体显示的。
</p>
    
  <h3>jQuery UI CSS Framework classes示例</h3>
  &lt;div class=&quot;<strong>ui-draggable</strong>&quot;&gt;&lt;/div&gt;
  <p class="theme-note">
    <strong>
      注：这是一个示例拖曳插件所产生的标记,而不是你应该使用的标记.创建一个拖动唯一需要的标记是 &lt;div&gt;&lt;/div&gt;.      
    </strong>
  </p>

  </div>
</div>

</p><!-- 
Pre-expand include size: 55001 bytes
Post-expand include size: 97441 bytes
Template argument size: 56083 bytes
Maximum: 2097152 bytes
-->

<!-- Saved in parser cache with key jqdocs_docs:pcache:idhash:3063-1!1!0!!en!2 and timestamp 20090303120113 -->


						<!-- end content -->
		</div>
	</div>
		</div>
				</div><!-- /#primaryContent -->				
			</div><!-- /#content -->
	</div><!-- /#siteContain -->	
	</body>
<!-- Cached 20090303115837 -->
</html>
